package uabc.ia.agentelimpieza.entidades;

import uabc.ia.agentelimpieza.ambiente.Celda;
import uabc.ia.agentelimpieza.constantes.Direccion;

public class Estado {
	
	private Celda locacion;
	private Direccion direccion;
	private boolean suciedad;
	private boolean mundoLimpio;
	
	public Estado(Celda locacion, Direccion direccion, boolean suciedad) {
		this.locacion = locacion;
		this.direccion = direccion;
		this.suciedad = suciedad;
		mundoLimpio = false;
	}
	
	public Estado(){
		
	}

	public String getPercepcion(){
		if(isSuciedad())
			return "loc("+locacion.getX()+","+locacion.getY()+")*dir("+
				direccion+")*dirt("+locacion.getX()+","+locacion.getY()+")";
		else
			return "loc("+locacion.getX()+","+locacion.getY()+")*dir("+
				direccion+")*~dirt("+locacion.getX()+","+locacion.getY()+")";
	}	
	
	public Celda getLocacion() {
		return locacion;
	}
	public void setLocacion(Celda locacion) {
		this.locacion = locacion;
	}
	public Direccion getDireccion() {
		return direccion;
	}
	public void setDireccion(Direccion direccion) {
		this.direccion = direccion;
	}
	public boolean isSuciedad() {
		return suciedad;
	}
	public void setSuciedad(boolean suciedad) {
		this.suciedad = suciedad;
	}

	public boolean isMundoLimpio() {
		return mundoLimpio;
	}

	public void setMundoLimpio(boolean mundoLimpio) {
		this.mundoLimpio = mundoLimpio;
	}
	
	

}
